Method and system for regulating instantaneous electromagnetic torque and storage medium for implementing the method

ABSTRACT

A method is described of regulating the instantaneous electromagnetic torque of a polyphase rotating electrical machine equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is controllable. The method comprises a step of commanding the switching of the switches of the inverter using the fundamental frequency of the voltage generated by the inverter and a form of synchronous pulse width modulation configured as a function of an input set point, and a step of calculating the input set point from an instantaneous torque set point at each regulation time. The method further comprises a step of determining the time interval between two successive regulation times so that the time interval corresponds to an integer multiple of the period of oscillation of the instantaneous torque of the machine.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to a method and a system for regulating the instantaneous electromagnetic torque of a polyphase rotating electrical machine and an information storage medium for implementing this method.

2. Description of the Prior Art

To be more precise, the invention relates to a regulation method in which the rotating electrical machine is equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is controllable, said method comprising:

-   -   a step of commanding the switching of the switches of the         inverter using the fundamental frequency of the voltage         generated by the inverter and a form of synchronous pulse width         modulation configured as a function of an input set point, and     -   a step of calculating the input set point from an instantaneous         torque set point at each regulation time.

In the remainder of the description, the terms “motor” and “torque” respectively denote a polyphase rotating electrical machine and the electromagnetic torque of this kind of machine. Moreover, the terms “fundamental” and “harmonic” respectively denote the sinusoidal component with the lowest frequency and the harmonics of second or higher order of a signal.

Thus the term harmonic as used herein refers only to harmonics of the second or higher order.

Methods of regulating the instantaneous torque of a motor are used in many fields, for example to control rolling mill drive motors.

There are many methods of using an inverter to chop a direct current voltage to create a polyphase alternating current voltage. Of such methods, those using pulse width modulation (PWM) are the most widely used. Pulse width modulation is divided into two families, respectively denoted “asynchronous” and “synchronous”.

Asynchronous pulse width modulation determines the switching times of the switches of the inverter from the intersection of a high-frequency carrier that is asynchronous with respect to the frequency of the fundamental of the voltage generated by the inverter and a modulating sinusoid at the required stator frequency.

Synchronous pulse width modulation, on the other hand, is synchronized to the fundamental frequency of the voltage generated by the inverter, and is defined by angles defining the times of occurrence and the number of switching operations during each fundamental period of the generated voltage. Typically, since each form of synchronous pulse width modulation corresponds to a particular voltage generated by the inverter, the control unit is adapted to employ several forms of synchronous pulse width modulation. In the present context, each form of synchronous pulse width modulation is defined by the particular value of the angles used to construct it. Thus in the remainder of this description two forms of synchronous pulse width modulation having different angle values each correspond to a different form of pulse width modulation.

During the regulation process, the control unit selects the form of pulse width modulation to use as a function of the amplitude of the voltage that the inverter must generate, for example.

For each form of modulation, the value of the angles used is generally precalculated to eliminate certain predefined harmonics, which is one advantage of synchronous pulse width modulation.

In the case of methods of regulating the instantaneous torque of a motor, the form of modulation is selected as a function in particular of the instantaneous torque set point. It has been found that control methods of this kind can achieve the advantages associated with the use of synchronous pulse width modulation only partially, if at all. This is because, although each form of modulation is constructed to eliminate certain harmonics, this occurs only partially, if at all.

The invention therefore aims to remedy this problem by proposing a method of regulating the instantaneous torque of a motor that uses synchronous pulse width modulation control and retains the advantages associated with using asynchronous pulse width modulation.

SUMMARY OF THE INVENTION

The invention therefore provides a method of regulating the instantaneous electromagnetic torque of a polyphase rotating electrical machine equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is controllable, said method comprising:

-   -   a step of commanding the switching of the switches of the         inverter using a pulse width modulation synchronous with the         fundamental frequency of the voltage generated by the inverter         and wherein the pulse width modulation is configured as a         function of an input set point, and     -   a step of calculating the input set point from an instantaneous         torque set point at each regulation time, and     -   a step of determining the time interval (T) between two         successive regulation times so that, as long as the         instantaneous torque set point is constant, that time interval         corresponds to an integer multiple of the period of oscillation         of the instantaneous torque of the machine caused by second         order or higher harmonics of the voltage and/or the current         generated by the inverter.

The various types of modulation are constructed to eliminate certain harmonics of the voltage generated by the inverter. Not all of the harmonics are eliminated, however, which causes oscillation of the instantaneous torque. To be more precise, the instantaneous torque results from the superposition of a substantially constant fundamental torque created by the fundamental frequency of the voltage and a pulsating torque created by the harmonics of the voltage. This pulsating torque oscillates several times in each period of the fundamental frequency of the voltage.

FIG. 1 represents the evolution of the instantaneous torque of a motor during a period T′ of the fundamental frequency of the voltage generated by an inverter controlled by synchronous pulse width modulation. The curves 4 and 6 represent the evolution of the instantaneous torque Γ_(S) with time when a first form MLI₁ of synchronous pulse width modulation and a second form MLI₂ of synchronous modulation that are different are used. Each of these curves features oscillations about a mean value represented by respective dashed horizontal axes Γ_(m1) and Γ_(m2). To simplify FIG. 1, the periods denoted T of the oscillations of the instantaneous torque generated by the modulation MLI₁ and the modulation MLI₂ are shown as identical. Also, to simplify the explanation given hereinafter, these oscillations are represented as being in phase. The instantaneous torque set point is represented by the thin horizontal line Γ_(CS).

In this example, each minimum on the curve 4 and each maximum on the curve 6 are situated on the thin line Γ_(CS).

It is assumed now that the regulation method is one employing an exact response control operation so as to reach the instantaneous torque set point at the next regulation time.

To explain better how the above method solves the problem stated, the causes of the problem are explained in more detail hereinafter, assuming first of all that a prior art regulation method is used in which the regulation interval is chosen arbitrarily. In this example, to simplify the explanation, it is assumed that the arbitrarily chosen regulation interval is T/2.

In this situation, at the time 0, the exact response control method selects the modulation MLI₁ to reach the set point Γ_(CS) at the next regulation time.

At the next regulation time T/2, the exact response control method selects the modulation MLI₂ to reach the set point Γ_(CS) at the time T.

In the purely illustrative context of FIG. 1, it is therefore seen that for the same constant instantaneous torque set point Γ_(CS), the exact response control method selects the modulation MLI₁ and the modulation MLI₂ alternately. Now, each change of modulation creates harmonics that may not be limited by the construction of the modulation MLI₁ and the modulation MLI₂.

This explains why the advantages of using synchronous pulse width modulation are not obtained when it is used in the context of a prior art method of regulating the instantaneous torque.

To solve this problem, the above method proposes to determine the regulation times so that they are integer multiples of the period of the instantaneous torque oscillation caused by the current and voltage harmonics. Accordingly, in the particular case of FIG. 1, the regulation times determined are integer multiples of the period T. Provided that the set point Γ_(CS) is constant, the exact response control operation then leads to selecting the same form of pulse width modulation at each regulation time, for example the modulation MLI₂ in this example. This considerably reduces the number of changes of modulation type, and each modulation type is selected for a sufficiently long time for the harmonics that must be eliminated to be eliminated.

According to other features of the method according to the invention:

-   -   the calculation step uses an exact response control method such         that the instantaneous torque set point is reached at the first         regulation time;     -   said interval is further determined as a function of the         instantaneous torque set point, the position, and the angular         speed of the rotor of said machine;     -   said time interval is determined for a synchronous machine with         smooth poles using the following equations:         ${\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T} + \varphi_{D}} \right)} \right\rbrack} = {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot \frac{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(0)}}{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(T)}} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + \varphi_{0}} \right)} \right)}}$         ${\cos\left( \varphi_{D} \right)} = {{\frac{I_{d}^{D}(T)}{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(T)}}\quad{\cos\left( \varphi_{0} \right)}} = \frac{I_{d}^{D}(0)}{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(0)}}}$         ${\sin\left( \varphi_{D} \right)} = {{\frac{I_{q}^{D}(T)}{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(T)}}\quad{\sin\left( \varphi_{0} \right)}} = \frac{I_{q}^{D}(0)}{{{\overset{\rightarrow\quad}{I}}_{dq}^{D}(0)}}}$         ${{\overset{\rightarrow}{I}}_{dq}^{D}(T)} = {\left| \begin{matrix}         {{\overset{\quad}{I}}_{d}^{D}(T)} \\         {I_{q}^{D}(T)}         \end{matrix} \right| = {\left| \begin{matrix}         {{I_{d}(T)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\         {{I_{q}(T)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}}         \end{matrix} \middle| \quad\quad{{\overset{\rightarrow}{I}}_{dq}^{D}(0)} \right. = {\left| \begin{matrix}         {I_{d}^{D}(0)} \\         {I_{q}^{D}(0)}         \end{matrix} \right| = \left| \begin{matrix}         {{I_{d}(0)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\         {{I_{q}(0)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}}         \end{matrix} \right|}}}$         in which:     -   Φ_(a) is the rotor flux of the magnets,     -   L is the stator inductance of the motor,     -   X is defined by the equation X=L.ω, where ω is the angular speed         of the rotor,         -   Z is defined by the equation Z={square root}{square root             over (R²+L²ω²)}, where R is the stator resistance of the             machine,         -   I_(d)(O) and I_(q)(O) are the components of the             instantaneous current vector measured at the regulation time             in a rotating system of axes d,q fixed with respect to the             rotor flux, the d axis being aligned with the rotor flux,         -   I_(d)(T) and I_(q)(T) are the components of the current             vector set point corresponding to the instantaneous torque             set point in the system of axes d, q, and         -   ρ₀ is the angle between the system of axes d, q and a fixed             system of axes α, β that is fixed with respect to the stator             windings;     -   the regulation times are spaced by a time interval equal to         T′/2p where p is the number of phases of the machine and T′ is         the period of the fundamental frequency of the voltage generated         by the inverter;     -   the regulation times are chosen to correspond exactly to times         at which the phase of the fundamental of the voltage generated         by the inverter is equal to kΠ/p, where k is an integer;     -   the method includes a step of correcting the instantaneous         torque set point if the interval determined crosses a predefined         time threshold, this correction step comprising:     -   a) an operation of taking the value of the threshold that has         been crossed as the value of said interval, and     -   b) an operation of establishing a temporary instantaneous torque         set point that can be reached using the time interval value         established during the operation a);     -   the method includes a step of correcting the instantaneous         torque set point if the input set point to be used during the         control step crosses a predefined set point limit, this second         correction step comprising:     -   an operation of establishing a new temporary instantaneous         torque set point that complies with the predefined set point         limit;     -   the predefined set point limit is measured at each current         regulation time.

The invention also consists in an information storage medium that comprises instructions for executing an instantaneous torque regulation method conforming to the invention when said instructions are executed by an electronic computer.

The invention also consists in a system for regulating the instantaneous torque of a polyphase rotating electrical machine equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is commendable, said system comprising:

-   -   a unit for commanding the switching of the switches of the         inverter using the fundamental frequency of the voltage         generated by the inverter and a form of synchronous pulse width         modulation configured as a function of an input set point, and     -   a unit for calculating the input set point from an instantaneous         torque set point, and     -   a unit for determining the time interval between two successive         regulation times so that, as long as the instantaneous torque         set point is constant, that time interval corresponds to an         integer multiple of the period of oscillation of the         instantaneous torque of the machine caused by second order or         higher harmonics of the voltage and/or the current generated by         the inverter.

The invention will be better understood after reading the following description, which is given by way of example only and with reference to the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a graph representing the instantaneous torque as a function of time.

FIG. 2 is a diagrammatic representation of a regulation system according to the invention.

FIG. 3 is a graph representing a switch control signal generated by the FIG. 2 system as a function of time.

FIG. 4 is a flowchart of a regulation method according to the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 2 shows a system 2 for regulating the instantaneous electromagnetic torque of a motor 4 having a stator and a rotor. The remainder of the description refers to the particular situation in which the motor 4 is a smooth pole three-phase synchronous motor with permanent magnets mounted at the surface of the rotor. The motor 4 is equipped with stator windings.

To this end, the system 2 is adapted to receive at its input an instantaneous torque set point Γ_(CS) and to deliver at its output control signals for a conventional three-phase inverter 8. The inverter 8 is supplied with power by a direct current voltage source 10.

The inverter 8 conventionally comprises three branches known as “legs” each formed of two switches connected in series by way of a center point. The center point of each leg is connected to the stator windings of the motor 4 to supply each phase of the motor with voltage and current.

The system 2 includes a control unit 20 for controlling the inverter 8 as a function of an input set point and a unit 22 for calculating the input set point as a function of the set point Γ_(CS). In this example the input set point is a voltage vector {right arrow over (V)} defined by its modulus ∥{right arrow over (V)}∥ and an angle β₀ in a fixed orthonomic system of axes α, β fixed with respect to the stator. The angle β₀ is defined relative to the axis α of this system of axes. This system of axes is frequently used and will not be described in more detail.

The control unit 20 includes a module 26 for controlling the switching of the switches of the inverter 8 using pulse width modulation and a modulation selector module 28.

The module 26 is adapted to command the switching of the switches of the inverter 8 as a function of the value of the angle β₀ and of angles α_(i) selected by the module 28. To this end, the module 26 uses a conventional synchronous pulse width modulation process with the fundamental frequency of the voltage generated by the inverter 8. FIG. 3 represents one example of a control signal generated by the module 26.

FIG. 3 represents the control signal of an upper switch of one leg of the inverter 8 as a function of time. Here, for example, the value 0 of the signal indicates that opening of the switch is commanded and the value 1 indicates that closing of the switch is commanded. FIG. 2 represents the regulation times as a function of the phase of the fundamental frequency of the voltage generated by the inverter 8. The range [0, 2Π] is divided into four sub-ranges Π₁, Π₂, Π₃ and Π₄ of equal size. In the range Π₁, the switching times of the switch are defined by angles α_(i). In this example seven angles α_(i) are necessary for defining the switching of the switch during the interval Π₁ and the form of pulse width modulation represented here is therefore the “seven-angle” form. The switching times in the intervals Π₂ to Π₄ are deduced from those defined for the interval Π₁ by conventional transformations. The control signals of the other switches are deduced from the FIG. 2 signal by shifting by 2Π/p the signal from FIG. 2, where p is the number of phases of the motor 4.

To eliminate even harmonics and harmonics whose order is a multiple of 3, the control signal here has two axes of symmetry at the abscissae Π/2 and 3Π/2, and a point of symmetry P at the abscissa Π.

Thus a form of modulation is defined once the value of the angles α_(i) is known.

The value of the angles α_(i) fixes the modulus of the fundamental frequency of the voltage generated by the inverter and therefore the mean torque of the inverter.

The module 28 is adapted to select and to deliver the value of the angles α_(i) corresponding to the value of the voltage modulus |{right arrow over (V)}∥ received at the input. To this end, the module 28 is associated with a memory 32 containing a table TP of the following form: ∥

∥_(l) α₁₁ α₂₁ α₃₁ α₄₁ α₅₁ α₆₁ α₇₁ . . . . . . . . . . . . . . . . ∥

∥_(k) α_(1k) α_(2k) α_(3k) α_(4k) α_(5k) α_(6k) α_(7k) . . . . . . . . . . . . . . . . ∥

∥_(m) α_(1m) α_(2m) α_(3m) α_(4m) α_(5m) α_(6m) α_(7m)

This table TP associates with each normalized value ${\overset{\_}{\overset{\rightarrow}{V}}}_{j}$ of the voltage modulus ∥{right arrow over (V)}∥ the value of the angles α_(ik) enabling the inverter 8 to generate a voltage for which the modulus of the fundamental frequency is equal to the modulus ∥{right arrow over (V)}∥. The formula for changing from the normalized value of the modulus ∥{right arrow over (V)}∥ to the value produced by the module 24 is as follows: ${\overset{\rightarrow}{V}} = {{\overset{\_}{\overset{\rightarrow}{V}}} \cdot V_{M}^{\hat{}}}$

-   -   where:         -   V{circumflex over ( )}_(M) is the instantaneous value of the             voltage at the terminals of the source 10.

If the normalized value $\overset{\_}{\overset{\rightarrow}{V}}$ is between two values prestored in the table TP, the selection module 28 is able to calculate the corresponding values of the angles α_(i) by linear interpolation.

The calculation unit 22 includes a conversion module 40 and an exact response control module 42.

The module 40 is adapted to convert the set point Γ_(CS) into a current set point {right arrow over (I)}(T) in the conventional way. The current set point {right arrow over (I)}(T) is defined here by its components I_(d)(T) and I_(q)(T) i a rotating orthonomic system of axes d,q that is fixed with respect to the rotor flux, the axis d being aligned with the rotor flux. This d,q system of axes is conventional, and the change from coordinates expressed in the ad, system of axes to those expressed in the d,q system of axes is effected simply by rotating the reference axes.

The module 42 receives at its input the components I_(q)(T) and I_(d)(T) and delivers at its output to the unit 20 the values of the modulus ∥{right arrow over (V)}∥ and the angle β₀ of the voltage vector.

The module 42 is adapted to calculate the value of the voltage vector {right arrow over (V)} so that the instantaneous torque set point corresponding to the set point {right arrow over (I)}(T) is reached at the next regulation time. To this end, the modulus 24 uses an exact response control process also known as a “deadbeat control process”. The process used here is described in patent application EP-A-123 35 06, for example. Suffice to say, therefore, that the formula used to calculate the value of the voltage vector {right arrow over (V)} as a function of the set point {right arrow over (I)}(T) is as follows: $\begin{matrix} {{\overset{\_}{\overset{\rightarrow}{V}}}_{dq} = {\left| \begin{matrix} V_{d} \\ V_{q} \end{matrix} \right| = \left. {\frac{1}{a(T)} \cdot} \middle| \begin{matrix} {{I_{d}(T)} - {I_{d}^{0}(T)}} \\ {{I_{q}(T)} - {I_{q}^{0}(T)}} \end{matrix} \right|}} & (1) \end{matrix}$

-   -   wherein:         ${a(T)} = {\frac{1}{R} \cdot \left( {1 - {\mathbb{e}}^{- \frac{T}{\tau}}} \right)}$     -   and: $\left. \quad \middle| \begin{matrix}         {I_{d}^{0}(T)} \\         {I_{q}^{0}(T)}         \end{matrix} \right|$     -   is the natural evolution of the instantaneous currents of the         stator of the motor when short circuited after a regulation         interval T from the original state of the stator current at the         preceding current measurement and regulation time.

T is the time interval between the current regulation time and the next regulation time, R is the stator resistance of the motor, L is the stator inductance of the motor, and τ is the stator time constant (τ=L/R).

The angle β₀ is transmitted directly to the control module 26 and the modulus ∥{right arrow over (V)}∥ is transmitted to the selection module 28.

It will be noted that, to establish the voltage vector {right arrow over (V)}, the module 42 needs to know the time interval T between two regulation times.

To this end, the system 2 includes a unit 44 adapted to determine the value of the interval as a function of the current set point {right arrow over (I)}(T).

In the particular embodiment described here, the system 2 also includes a unit 46 for correcting the instantaneous torque set point if the latter may not be reached at the next regulation time because of functional limitations of the system 2 or the inverter 8. To be more precise, the unit 46 includes a module 48 for correcting the instantaneous torque set point if the interval T determined by the unit 44 exceeds the predefined thresholds T_(min) and T_(max). The unit 46 also includes a module 49 for correcting the instantaneous torque set point if the modulus ∥{right arrow over (V)}∥ delivered by the module 42 delimits a predefined maximum direct current voltage limit V_(M). To this end, the unit 46 is connected to the unit 44 so that it knows the value of the interval T and to the output of the module 42 so that it knows the value of the modulus ∥{right arrow over (V)}∥. The unit 46 is also connected directly to the input of the module 42 so that it can supply to the latter a corrected instantaneous torque set point in the form of a current set point.

To be more precise, the units 44 and 46 are adapted to carry out the calculations to be described with reference to FIG. 4.

Finally, the system 2 includes a sensor 50 for the current {right arrow over (I)}(O) in the stator windings, a sensor 52 for the direct current voltage V_(M) generated by the source 10, a sensor 54 for the angular speed ω of the rotor of the motor 4, and a sensor 56 for the angular position ρ_(o) of the rotor of the motor 4.

The sensor 50 is formed of a plurality of individual current sensors each adapted to measure the current in the stator windings of one phase of the motor 4, in order to measure the instantaneous current vector. This sensor 50 is further adapted to transform the instantaneous current vector measured by the Concordia transformation generalized to a polyphase system, so as to deliver directly at the output the two components I_(d)(0) and I_(q)(0) of the instantaneous current vector.

These sensors are connected to the units 44 and 46 in particular. However, in order to simplify FIG. 2, these connections are not shown.

The system 2 is typically based on a conventional programmable electronic computer adapted to execute instructions stored on an information storage medium. To this end, the system 2 is associated with a memory 60 containing instructions for executing the FIG. 4 method.

The operation of the system 2 is described next in relation to the FIG. 4 method.

That method comprises two main phases, namely an initialization phase 70 followed by a regulation phase 72.

During the phase 70, the various forms of modulation are constructed during an operation 74 to eliminate certain predetermined harmonics. For example, the operation 74 is carried out with the aid of software simulating a digital model of the inverter 8 and the motor 4. The value of the angles α_(i) for each form of modulation is determined during this operation 74.

At the end of the operation 74, the sets of angle values α_(i) determined are stored, during an operation 76, in the memory 32, in which they are associated with the normalized value of the modulus ∥{right arrow over (V)}∥ corresponding to form the table TP.

During this phase 70, the various constant parameters of the motor 4 are also determined and stored in the memory 60, during an operation 78. For example, during this operation 70, the values of the stator inductance L and the stator resistance R of the motor and the value of the flux Φ_(a) are stored in the memory 60.

Once the initialization phase has been completed, the regulation phase may begin.

At the current regulation time, the current {right arrow over (I)}(O), the direct current voltage V_(m), the angular position ρ_(o), and the angular speed ω are measured by respective sensors 50, 52, 56 and 54, during a step 80.

The module 40 then acquires the value of the instantaneous torque set point Γ_(CS) and, in a conventional way, converts that torque set point Γ_(CS) into a current set point {right arrow over (I)}(T) during a step 82.

Then, during a step 86, the unit 44 determines the value of the interval T between the current regulation time and the next regulation time. This step begins with an operation 90 during which the unit 44 establishes the values of the parameters I_(d) ^(D)(O), I_(q) ^(D)(O), I_(d) ^(D)(T) and I_(q) ^(D)(T) using the following equations: $\begin{matrix} {{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)} = {\left| \begin{matrix} {I_{d}^{D}(T)} \\ {I_{q}^{D}(T)} \end{matrix} \right| = {\left| \begin{matrix} {{I_{d}(T)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\ {{I_{q}(T)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}} \end{matrix} \middle| \quad{{\overset{\rightarrow}{I}}_{dq}^{D}(0)} \right. = {\left| \begin{matrix} {I_{d}^{D}(0)} \\ {I_{q}^{D}(0)} \end{matrix} \right| = \left| \begin{matrix} {{I_{d}(0)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\ {{I_{q}(0)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}} \end{matrix} \right|}}}}\quad} & (2) \end{matrix}$ in which:

-   -   Φ_(a) is the rotor flux from the magnets,     -   L is the stator inductance of the motor 4,     -   X is defined by the equation X=L.ω, where ω is the angular speed         measured at this regulation time,     -   Z is defined by the equation Z={square root}{square root over         (R²+L²·ω²)}, where R is the stator resistance of the motor 4,     -   I_(d)(O) and I_(q)(O) are the coordinates in the system of axes         d,q of the instantaneous current vector {right arrow over         (I)}(O) measured by the sensor 50 at this regulation time, and     -   I_(d)(T) and I_(q)(T) are the components of the current vector         set point delivered by the module 40′.

From the values of the parameters I_(d) ^(D)(O), I_(q) ^(D)(O), I_(d) ^(D)(T) and I_(q) ^(D)(T) established during the operation 90, the unit 44 establishes the values of the angles φ_(d) and φ_(o) during an operation 92, using the following equations: $\begin{matrix} {{{\cos\quad\left( \varphi_{D} \right)} = {{\frac{I_{d}^{D}(T)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}}\quad{\cos\left( \varphi_{0} \right)}} = \frac{I_{d}^{D}(0)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}}}{{\sin\quad\left( \varphi_{D} \right)} = {{\frac{I_{q}^{D}(T)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}}\quad{\sin\left( \varphi_{0} \right)}} = \frac{I_{q}^{D}(0)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}}}} & (17) \end{matrix}$

-   -   in which the symbol ∥ . . . ∥ represents the modulus of a         vector.

As explained above, the instantaneous torque is made up of a substantially constant torque Γ_(m) and a pulsating torque. This being so, forms of pulse width modulation are constructed that eliminate the even harmonics and the harmonics of order 3n, where n is an integer, since it has been established that the period of the pulsating torque is T′/2p, where T′ is the period of the fundamental frequency of the voltage generated by the inverter and p is the number of phases of the motor 4. To be more precise, it has been found that the instantaneous torque repeats each time that the voltage vector {right arrow over (V)} is at an angle kΠ/p to the axis α of the system of axes α, β.

To this end, to determine the time interval T, there is added to the system of equations (1) a further equation expressing the fact that the phase of the voltage vector {right arrow over (V)} must be a multiple of k×Π/3. For example, this is expressed by the following mathematical relationship: $\begin{matrix} {{{V_{\alpha} \cdot {\sin\left( {k \cdot \frac{\pi}{3}} \right)}} - {V_{\beta} \cdot {\cos\left( {k \cdot \frac{\pi}{3}} \right)}}} = 0} & (4) \end{matrix}$

-   -   in which V_(α) and V_(β) are the coordinates of the voltage         vector {right arrow over (V)} in the system of axes α, β.

It will be noted that the system of equations (1) is a system of two equations in three unknowns (T, V_(d) and V_(q)) and that it is therefore always possible to find a solution to the system of equations (1), even if an additional constraint is added to the unknowns V_(d) and V_(q).

An analytical solution for the system of equations (1) to which the equation (4) is added is expressed by the following equation: $\begin{matrix} \begin{matrix} {{\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T} + \varphi_{D}} \right)} \right\rbrack} = {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot \frac{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}} \cdot}} \\ {\sin\left( {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + \varphi_{0}} \right)} \right)} \end{matrix} & (5) \end{matrix}$

-   -   in which:         -   ρ₀ is the angle of the system of axes d,q relative to the             system of axes α,β, this angle ρ₀ being measured by the             sensor 56, and         -   k is an integer from the set {0,1,2,3,4,5}.

The other variables of the above equation have already been defined in relation to the operations 90 and 92.

The unit 44 determines the value of the interval T by solving the equation (5) by successive iterations. To be more precise, during an operation 94, the unit 44 sets an initial value T_(S) for the interval T and calculates the right-hand member of the equation (5) for this value T_(S). To obtain fast convergence toward a result, the value T_(S) is made equal to 1/(6.N_(p)·F_(m)), where N_(p) is the number of pairs of poles of the motor 4 and F_(m) is the mechanical frequency of the rotor of the motor 4 measured by the sensor 54.

Then, during an operation 96, the unit 44 calculates the value of the interval T for the left-hand member to correspond to the value established for the right-hand member during the operation 94.

The unit 44 then returns to the operation 94, choosing for the initial value T_(S) that established for the interval T during the operation 96.

Thus the operations 94 and 96 are iterated until the value of the interval T is established with sufficient accuracy.

Then, during an operation 98, the value of the interval T is compared to the time thresholds T_(min) and T_(max). Below the threshold T_(min), the time interval T is too short for the calculations to be carried out in real time. Above the threshold T_(max), the regulation times are too far apart, which leaves the motor out of control for too long.

If the value of the interval T is between the two thresholds T_(min) and T_(max), a step 99 of calculating the modulus ∥{right arrow over (V)}∥ and the angle β₀ is executed.

If, during the comparison operation 98, the value of the interval T previously established exceeds one of these thresholds, the module 48 carries out a first step 100 of correcting the instantaneous torque set point.

At the start of the step 100, during an operation 102, the value of the interval T is set to the value of the threshold that has been exceeded, i.e. to the value of the threshold T_(min) or the threshold T_(max).

Then, during an operation 104, a new temporary instantaneous torque set point that may be reached in the interval T fixed during the operation 102 is established. To this end, the relation 5 is solved for the situation in which the value of the interval T is that established during the operation 102 and by fixing the value either of I_(d)(T) or of I_(q)(T). For example, if the aim is to maintain the torque, the value of I_(q)(T) is made equal to that established by the module 40 and the value I_(d)(T) is the unknown. The equation (5) is then written in the form: $\begin{matrix} \begin{matrix} {I_{d_{k}}^{D} = {\frac{1}{\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T_{m}}} \right)} \right\rbrack} \cdot \left\{ {{I_{q}^{D} \cdot {\cos\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T_{m}}} \right)} \right\rbrack}} +} \right.}} \\ \left. {{\mathbb{e}}^{- \frac{T_{m}}{\tau}}\left\{ {{{I_{d}^{D}(0)} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \rho_{0}} \right)}} - {{I_{q}^{D}(0)} \cdot {\cos\left( {{k \cdot \frac{\pi}{3}} - \rho_{0}} \right)}}} \right\}} \right\} \end{matrix} & (6) \end{matrix}$

-   -   in which:         -   T_(m) is the value of the interval T fixed during the             operation 102.

If the aim is to maintain the de-excitation, the value of I_(d)(T) is set at that established by the module 40 and the value of I_(q)(T) is established using the following equation: $\begin{matrix} \begin{matrix} {I_{q_{k}}^{D} = {\frac{1}{\cos\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T_{m}}} \right)} \right\rbrack} \cdot \left\{ {{I_{d}^{D} \cdot {\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T_{m}}} \right)} \right\rbrack}} -} \right.}} \\ \left. {{\mathbb{e}}^{- \frac{T_{m}}{\tau}}\left\{ {{{I_{d}^{D}(0)} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \rho_{0}} \right)}} - {{I_{q}^{D}(0)} \cdot {\cos\left( {{k \cdot \frac{\pi}{3}} - \rho_{0}} \right)}}} \right\}} \right\} \end{matrix} & (7) \end{matrix}$

The unit 44 solves the equation (6) or the equation (7) by successive iterations in a similar manner to that described with reference to the operations 94 and 96.

At the end of the step 100, the method proceeds to the step 99.

During the step 99, an exact response control method is executed to establish the voltage vector {right arrow over (V)} from the set point {right arrow over (I)}(T) and the value of the interval T. Because this method is described in the patent EP A 123 35 06, it need not be described in detail here.

During a step 110, the unit 46 compares the modulus ∥{right arrow over (V)}∥ generated by the module 42 to the voltage limit V_(M) measured by the sensor 52. If the modulus ∥{right arrow over (V)}∥ is not above the limit V_(M), the method continues with a step 112 of commanding the switching of the switches of the inverter 8.

Otherwise, the unit 46 carries out a second step 114 of correcting the instantaneous torque set point.

A temporary instantaneous torque set point is calculated during the step 114. To this effect, the equation (5) is solved allowing for an additional constraint whereby a voltage modulus ∥{right arrow over (V)}∥ may not exceed the limit V_(M). This additional constraint is expressed by the following equation: [I _(d) ^(D)(T)−I _(d) ^(0D)(T)]² +[I _(q) ^(D)(T)−I_(q) ^(0D)(T)]² =a(T)² ·V _(M) ²  (8)

-   -   in which:         -   I_(d) ^(oD)(T) and I_(q) ^(oD)(T) represent the natural             evolution of the motor for a null voltage and are defined in             the patent EP A 123 35 06.

The system of equations consisting of the equations (5) and (8) may equally be written in the form: $\begin{matrix} \begin{matrix} {{I_{d}(T)} = {{{\pm {a(T)}} \cdot V_{M} \cdot {\cos\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T}} \right)} \right\rbrack}} +}} \\ {\quad{{\frac{- X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}} + {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot {{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}} \cdot {\cos\left( {{\omega \cdot T} - \varphi_{0}} \right)}}}} \\ {{I_{q}(T)} = {{{\pm {a(T)}} \cdot V_{M} \cdot {\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T}} \right)} \right\rbrack}} +}} \\ {\quad{{\frac{{- R} \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}} - {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot {{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}} \cdot {\sin\left( {{\omega \cdot T} - \varphi_{0}} \right)}}}} \end{matrix} & (9) \end{matrix}$

The system of equations (9) consists of two equations both of which enable the interval T to be calculated from coordinates of the current set point vector {right arrow over (I)}(T). If the voltage limit V_(M) is reached, it is generally no longer possible to impose I_(q)(T), I_(d)(T) and the corresponding value of the interval T. Thus reaching the voltage limit V_(M) loses one degree of freedom. To solve the system (9), during an operation 116, the module 49 fixes one of the two components of the current vector {right arrow over (I)}(T) and calculates the time interval T using one of the two equations of the system (9). Then, during operation 118, using the other equation of the system 26 and the interval value T calculated during the operation 116, the value of the other coordinate of the current set point vector {right arrow over (I)}(T) is calculated.

For example, if the value of the component I_(q)(T) is made equal to the value applied to the input of the module 42, the value of the time interval T is defined by the following equations: $\begin{matrix} \begin{matrix} {T = {\frac{1}{\omega} \cdot \left\{ {{\arccos\left( \frac{I_{q}^{D}(T)}{M} \right)} + {{{sign}(B)} \cdot {{Arccos}\left( \frac{A}{M} \right)}} + \varphi_{0} - \frac{\pi}{2}} \right\}}} \\ {A = {{{\pm {a(T)}} \cdot V_{M} \cdot {\cos\left( {{k \cdot \frac{\pi}{3}} - \rho_{0} - \varphi_{0}} \right)}} + {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot {{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}}}} \\ {B = {{\pm {a(T)}} \cdot V_{M} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \rho_{0} - \varphi_{0}} \right)}}} \\ {M = \sqrt{A^{2} + B^{2}}} \end{matrix} & (10) \end{matrix}$

Another possibility is to set the value of the component I_(d)(T) and to calculate the interval T using the following equations: $\begin{matrix} \begin{matrix} {T_{n} = {\frac{1}{\omega} \cdot \left\{ {{\arccos\left( \frac{I_{d}^{D}}{M} \right)} + {{{sign}(B)} \cdot {{Arccos}\left( \frac{A}{M} \right)}} + \varphi_{0}} \right\}}} \\ {A = {{{\pm {a(T)}} \cdot V_{M} \cdot {\cos\left( {{k \cdot \frac{\pi}{3}} - \rho_{0} - \varphi_{0}} \right)}} + {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot {{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}}}} \\ {B = {{\pm {a(T)}} \cdot V_{M} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \rho_{0} - \varphi_{0}} \right)}}} \\ {{a(T)} = {\frac{1}{R} \cdot \left( {1 - {\mathbb{e}}^{- \frac{T}{\tau}}} \right)}} \\ {M = \sqrt{A^{2} + B^{2}}} \end{matrix} & (11) \end{matrix}$

At the end of the step 114, the method returns to the step 98 of comparing the value of the interval T to the thresholds T_(min) and T_(max).

In the step 112, during an operation 130, the selection module 28 selects in the memory 32 the values of the angles α_(i) corresponding to the modulus ∥{right arrow over (V)}∥ and delivers those angles to the module 26.

Then, during an operation 132, the module 26 commands the switching of the switches of the inverter 8 using the form of pulse width modulation defined by the angles α_(i) received.

Until the next regulation time, the module 26 continues to command the switches of the inverter 8 using the same form of modulation.

At the end of the step 112, and at the next regulation time, the method returns to the step 80.

Thus the above method regulates the instantaneous torque only at times at, which the phase of the voltage vector {right arrow over (V)} is at an angle k×Π/3 to the axis α of the system of axes α, β. Thanks to this property, the instantaneous torque is regulated only at integer multiples of the period of the oscillations of the instantaneous torque generated by the voltage harmonics. As explained with reference to FIG. 1, this limits the changes of modulation and therefore the generation of uncontrolled harmonics.

Thus the FIG. 4 method combines the advantages of an exact response control method and the advantages associated with the use of synchronous pulse width modulation. In particular, this method has a wide dynamic range and guarantees the absence of certain harmonics. 

1. A method of regulating the instantaneous electromagnetic torque of a polyphase rotating electrical machine equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is controllable, said method comprising: a step of commanding the switching of said switches of said inverter using a pulse width modulation synchronous with the fundamental frequency of said voltage generated by said inverter, wherein the pulse width modulation is configured as a function of an input set point, and a step of calculating said input set point from an instantaneous torque set point at each regulation time, and a step of determining the time interval (T) between two successive regulation times so that, as long as said instantaneous torque set point is constant, that time interval corresponds to an integer multiple of the period of oscillation of said instantaneous torque of said machine caused by second order or higher harmonics of said voltage and/or said current generated by said inverter.
 2. A method claimed in claim 1, wherein said calculation step uses an exact response control method such that said instantaneous torque set point is reached at said first regulation time.
 3. A method claimed in claim 1, for a machine equipped with a rotor, wherein said interval is further determined as a function of said instantaneous torque set point (Γ_(CS)), the position (ρ₀), and the angular speed (ω) of said rotor of said machine.
 4. A method claimed in claim 3, wherein said time interval (T) is determined for a synchronous machine with smooth poles using the following equations: $\begin{matrix} {{\sin\left\lbrack {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + {\omega \cdot T} + \varphi_{D}} \right)} \right\rbrack} = {{\mathbb{e}}^{- \frac{T}{\tau}} \cdot \frac{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}} \cdot {\sin\left( {{k \cdot \frac{\pi}{3}} - \left( {\rho_{0} + \varphi_{0}} \right)} \right)}}} \\ \begin{matrix} {{\cos\left( \varphi_{D} \right)} = \frac{I_{d}^{D}(T)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}}} & \quad & {{\cos\left( \varphi_{0} \right)} = \frac{I_{d}^{D}(0)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}} \end{matrix} \\ \begin{matrix} {{\sin\left( \varphi_{D} \right)} = \frac{I_{q}^{D}(T)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(T)}}} & \quad & {{\sin\left( \varphi_{0} \right)} = \frac{I_{q}^{D}(0)}{{{\overset{\rightarrow}{I}}_{dq}^{D}(0)}}} \end{matrix} \\ {{{\overset{\rightarrow}{I}}_{dq}^{D}(T)} = {{\begin{matrix} {I_{d}^{D}(T)} \\ {I_{q}^{D}(T)} \end{matrix}} = {\begin{matrix} {{I_{d}(T)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\ {{I_{q}(T)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}} \end{matrix}}}} \\ {{{\overset{\rightarrow}{I}}_{dq}^{D}(0)} = {{\begin{matrix} {I_{d}^{D}(0)} \\ {I_{q}^{D}(0)} \end{matrix}} = {\begin{matrix} {{I_{d}(0)} + {\frac{X^{2}}{L \cdot Z^{2}} \cdot \Phi_{a}}} \\ {{I_{q}(0)} + {\frac{R \cdot X}{L \cdot Z^{2}} \cdot \Phi_{a}}} \end{matrix}}}} \end{matrix}$ in which: Φ_(a) is the rotor flux of the magnets, L is the stator inductance of the motor, X is defined by the equation X=L.ω, where ω is the angular speed of the rotor, Z is defined by the equation Z={square root}{square root over (R²+L²ω²)}, where R is the stator resistance of the machine, I_(d)(O) and I_(q)(O) are the components of the instantaneous current vector measured at the regulation time in a rotating system of axes d,q fixed with respect to the rotor flux, the d axis being aligned with the rotor flux, I_(d)(T) and I_(q)(T) are the components of the current vector set point corresponding to the instantaneous torque set point in the system of axes d, q, and ρ₀ is the angle between the system of axes d, q and a fixed system of axes α, β that is fixed with respect to the stator windings.
 5. A method claimed in claim 1, wherein said regulation times are spaced by a time interval equal to T′/2p where p is the number of phases of said machine and T′ is the period of said fundamental frequency of said voltage generated by said inverter.
 6. A method claimed in claim 5, wherein said regulation times are chosen to correspond exactly to times at which the phase of said fundamental frequency of said voltage generated by said inverter is equal to kΠ/p, where k is an integer.
 7. A method claimed in claim 1, including a step of correcting said instantaneous torque set point if the interval (T) determined crosses a predefined time threshold, this correction step comprising: a) an operation of taking the value of the threshold that has been crossed as the value of said interval, and b) an operation of establishing a temporary instantaneous torque set point that can be reached using the time interval value established during the operation a).
 8. A method claimed in claim 1, including a step of correcting said instantaneous torque set point if the input set point to be used during the control step crosses a predefined set point limit, this second correction step comprising: an operation of establishing a new temporary instantaneous torque set point that complies with the predefined set point limit.
 9. A method claimed in claim 8, wherein said predefined set point limit is measured at each current regulation time.
 10. An information storage medium comprising instructions for executing a regulation method conforming to claim 1, when said instructions are executed by an electronic computer.
 11. A system for regulating the instantaneous electromagnetic torque of a polyphase rotating electrical machine equipped with stator and/or rotor windings supplied by a voltage and a current generated by an inverter formed of switches whose switching is commandable, said system comprising: a unit to command the switching of said switches of said inverter using a pulse width modulation synchronous with the fundamental frequency of the voltage generated by said inverter wherein the pulse width modulation is configured as a function of an input set point, and a unit to calculate said input set point from an instantaneous torque set point, and a unit to determine the time interval (T) between two successive regulation times so that, as long as said instantaneous torque set point is constant, that time interval corresponds to an integer multiple of the period of oscillation of the instantaneous torque of said machine caused by second order or higher harmonics of said voltage and/or said current generated by said inverter. 